package com.example.czy.utils;

import java.math.BigDecimal;

/**
 * 增长率计算工具
 *
 * @Author czy
 * @Date 2024-01-05 15:20:07
 **/
public class RateUtil {

    /**
     * 获取增长率，保留两位小数
     * 环比增长率 = ( 本期某指标数值 - 上期该指标数值 ) ÷ 上期该指标数值 x 100%;
     * 同比增长率 = ( 当年某指标数值 - 上年同期该指标数值 ) ÷ 上年同期该指标数值 x 100%;
     *
     * @param current 当前值
     * @param last    上期值
     * @return
     */
    public static BigDecimal getGrowthRate(BigDecimal current, BigDecimal last) {
        return  current.subtract(last).multiply(new BigDecimal(100)).divide(last.compareTo(BigDecimal.ZERO) == 0 ? BigDecimal.ONE : last, 2, BigDecimal.ROUND_HALF_UP);
    }


}
